// 前后分离过程中有大量的 AJAX 操作
function ajax(method, url, fn) {
    var xhr = new XMLHttpRequest()
    xhr.open(method, url)
    xhr.onload = function () {
        var result = JSON.parse(xhr.responseText)

        // JS 中的回调(callback)函数
        fn(result)
    }
    xhr.send()
}

// 从 url 的 query string 部分，获取需要的参数
function getParameter(name) {
    var query = window.location.search.substring(1);
    var params = query.split("&");
    for (var param of params) {
        var pair = param.split("=");
        if (pair[0] === name) {
            return decodeURIComponent(pair[1]);
        }
    }
    return undefined;
}